/**
 * 登录请求
 */
export interface ILoginRequest {
  username: string;
  password: string;
}

/**
 * 登录响应
 */
export interface ILoginResponse {
  accessToken: string;
  tokenType: string;
  expiresIn: number;
  user: IUserProfile;
}

/**
 * 当前用户信息（从 JWT Token 解析或 CLS 获取）
 */
export interface ICurrentUser {
  userId: string;
  username: string;
  roles: string[];
  permissions?: string[];
}

/**
 * 修改密码请求
 */
export interface IChangePassword {
  oldPassword: string;
  newPassword: string;
}

/**
 * 更新个人信息请求
 */
export interface IUpdateProfile {
  nickname?: string;
  email?: string;
  mobile?: string;
  avatar?: string;
}

/**
 * 用户个人信息响应
 */
export interface IUserProfile {
  username: string;
  nickname?: string | null;
  email?: string | null;
  mobile?: string | null;
  avatar?: string | null;
  deptId?: string | null;
  status: number;
  roles: string[];
  permissions: string[];
}

